ITblog

オブジェクト指向について

2018年10月27日

オブジェクト指向プログラムは、特定の属性とメソッドを持ったクラスを定義して利用する仕組みのことです。

オブジェクト指向のメリット

ポリモルフィズム

クラスの継承の概念を利用することで、同じ名称のメソッド(関数)で、異なる挙動をすることができます。
オブジェクト指向を概念を使っていない場合、例えば車の「走る」メソッドと、バイクの「走る」メソッドを作る場合、それぞれ別名の関数を定義しないといけません。
オブジェクト指向を使っている場合、走るメソッドは名称としては1つでも、それぞれ車クラスから、バイクのスーパークラスを定義することで、同じメソッド名で異なる挙動をさせることができます。
何のメリットがあるかというと、結果的に定義するメソッドの数は同じですが、メソッド名は1つで済むのでよりシンプルです。(そのかわり、複数のクラス名は存在します)
これをポリモルフィズムといいます。

カプセル化

カプセル化とは、外部から見たときにその内容が分からないことです。
クラスを定義して、そのメソッドを呼び出すだけなので、プログラムのその部分を見たときにはシンプルです。
そのため、複数の人で作業する場合、作業する人は自分が担当する箇所の修正に集中できます。

まとめ

オブジェクト指向は、共通した性質を持っているものの意味が違う複数の機能やふるまいを実装する場合に便利です。

プログラムを実装する場合に、前段階で、作成するこの複数の機能は、この部分は共通してこの部分は異なっていると、そのようなことが分かっている場合、共通している性質をスーパークラスとして定義し、異なる部分をサブクラスとして定義することで、実装や修正にかかるコストを削減できます。

また、プログラムが全体としてまとまりとして分かれるため、分かりやすくなるメリットもあります。

オブジェクト指向を使ってプログラムを実装する場合、実装前に設計の段階である程度クラスを定義したり設計を考慮する必要があります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です